补丁在免杀中的应用
一次性进群,长期免费索取教程,没有付费教程。
教程列表见微信公众号底部菜单
进微信群回复公众号:微信群;QQ群:16004488
微信公众号:计算机与网络安全
ID:Computer-network
相信大家对于补丁都不陌生,如果系统出现了漏洞,厂商就会发布漏洞补丁;软件出现了bug,作者则会发布补丁修正错误;有些软件的使用是需要收费的,骇客们就会发布破解补丁使其免费。
现在轮到黑客了,木马被杀毒软件查杀了,黑客们是不是也应该发布一个补丁使其免杀呢?免杀补丁属于免杀技术的一种,虽然其并不适合对外发布,但是免杀补丁却可用于其他“更有价值的领域”(如漏洞补丁或破解补丁)。下面所用的例子复杂一些,但更便于您掌握补丁技术的精髓,从而运用到其他更有价值的领域中。
为应用程序打补丁有很多工具可以使用,本例使用的补丁工具为dUP2,它的全名为diablo2oo2's Universal Patcher,是一款非常好用的补丁制作软件。在制作补丁时一般都需要两个文件,一个是原文件,另一个则是修改后的文件。
首先,双击打开dUP2,单击页面右上角的“新建方案”,在弹出的界面中输入版权信息,如图1所示。
图1 输入版权信息
然后单击主界面中的“添加”按钮,在弹出的对话框中选择“[偏移补丁]”,并单击“确定”按钮,如图2所示。
图2 添加补丁数据类型
现在列表里就出现了“[偏移补丁]”这条信息,选中它后单击右边的“编辑”按钮,就出现了如图3所示的界面中。在此界面的“原始文件”栏选择原文件,并在“新的文件”栏选择修改后的文件,然后单击右边的“比较”按钮,再单击右下角的“保存”按钮,最后返回到主界面中,单击“创建补丁”按钮就可以成功生成补丁了。
图3 比较补丁偏移信息
通过图3中的信息可知,这次制作的其实是一个RAR自解压文件的变异补丁,它可以使RAR自解压文件变异,从而不被WinRAR和杀毒软件所识别。那么它是怎么制作的呢?
首先使用WinHex打开RAR自解压文件“实验【原文件】.exe”,依次选择菜单栏上的“搜索”→“替换十六进制数值”。在弹出的对话框的“搜索”处填入807A0161,在“替换”处填入807A0160,也就是将最后的61改为60,如图4所示。
图4 替换十六进制数据
然后再使用同样的方式将526172211A70替换为526072211A70,最后保存修改后的文件。现在我们找到保存的文件,再使用右键单击查看,WinRAR已经识别不了了,如图5所示。
图5 WinRAR已近无法识别处理后的自解压文件
这些被替换掉的十六进制值是WinRAR在识别自解压文件时要用的特征值,这些值的替换并不会影响自解压文件本身的正常工作。
(1)这种打补丁的方法适用于哪些情况?
通过上面的操作步骤,可以帮助我们使用dUP2随意地将一个文件从一种状态更改为另外一种状态。例如我们想制作免杀补丁,那么在“原始文件”处就选择未经过免杀处理的木马文件,在“新的文件”处选择免杀之后的文件,然后再按照上面的步骤进行操作就可以制作出免杀补丁了。其实大家也可以将其理解为一种替换,就是将目标文件替换为我们修改完的文件。
因此,所有可以用替换文件这个方式解决问题的情况,都能使用这种补丁技术来解决。
(2)打补丁的原理是什么?
如果我们知道一个木马的偏移量为0x00123456,并且将相应位置的内容由AA改为BB这个文件就会免杀成功,那么我们会怎么做呢?是不是使用WinHex去修改?其实补丁所做的工作就是将我们的修改自动化了,它通过比较两个文件的差异,将其记录下来,以后只要再碰到那个文件,它就知道应该怎样去修改它,您可以理解为将其替换为我们修改之后的文件。
微信公众号:计算机与网络安全
ID:Computer-network